﻿
namespace HSS.ComponentModel
{

	/// <summary>
	/// Specifies the display name for a property. 
	/// </summary>
	[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
	public sealed class DisplayNameAttribute : System.Attribute
	{
		/// <summary>
		/// Initializes a new instance of the DisplayNameAttribute class using the display name.
		/// </summary>
		/// <param name="displayName">The display name.</param>
		public DisplayNameAttribute(string displayName)
		{
			if (string.IsNullOrEmpty(displayName)) throw new System.ArgumentNullException("displayName");
			this.DisplayName = displayName;
		}

		/// <summary>
		/// Gets the display name for a property stored in this attribute.
		/// </summary>
		public string DisplayName { get; private set; }

	}
}
